<?php
// +----------------------------------------------------------------------
// | ThinkPHP [ WE CAN DO IT JUST THINK ]
// +----------------------------------------------------------------------
// | Copyright (c) 2006-2016 http://thinkphp.cn All rights reserved.
// +----------------------------------------------------------------------
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
// +----------------------------------------------------------------------
// | Author: 流年 <liu21st@gmail.com>
// +----------------------------------------------------------------------

// 应用公共文件
function https_request($url,$data=null,$headers = null){

    // 初始化一个 cURL 对象
    $curl = curl_init();

    if(!empty($headers)){
        curl_setopt($curl,CURLOPT_HTTPHEADER,$headers);
    }

    // 设置你需要抓取的URL
    curl_setopt($curl, CURLOPT_URL,$url);

    //必须加这个，不加不好使（不多加解释，东西太多了）
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);//对认证证书进行检验
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);

    if (!empty($data)){//post方式，否则是get方式
        //设置模拟post方式
        curl_setopt($curl,CURLOPT_POST,1);
        //传数据，get方式是直接在地址栏传的，这是post传参的解决方式
        curl_setopt($curl,CURLOPT_POSTFIELDS,$data);//$data可以是数组，json
    }

    // 设置cURL 参数，要求结果保存到字符串中还是输出到屏幕上。1是保存，0是输出
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

    // 运行cURL，请求网页
    $output = curl_exec($curl);

    // 关闭URL请求
    curl_close($curl);

    return $output;
}